#include <bits/stdc++.h>
using namespace std;
const int N = 1000100, mod = 998244353;
void solve(){
int n;
cin >> n;
vector <int> a(n), b(n);
for(int i = 0; i < n; ++i)
cin >> a[i];
for(int i = 0; i < n; ++i)
cin >> b[i];
long long mn = 0;
long long cur = 0;
for(int i = 0; i < n + n; ++i){
cur += a[i % n];
cur -= b[(i - 1 + n) % n];
if(cur - mn - b[i % n] > 0){
//cout << mn << " " << cur << " " << i << endl;
cout << "NO\n";
return;
}
mn = min(mn, cur);
}
if(cur > 0)
cout << "NO\n";
else cout << "YES\n";
}
int main(){
cin.tie(0);
cout.tie(0);
ios_base::sync_with_stdio(NULL);
int T;
cin >> T;
//T = 1;
while(T--)
solve();
return 0;
}
1399A - Remove Smallest | 208A - Dubstep |
1581A - CQXYM Count Permutations | 337A - Puzzles |
495A - Digital Counter | 796A - Buying A House |
67A - Partial Teacher | 116A - Tram |
1472B - Fair Division | 1281C - Cut and Paste |
141A - Amusing Joke | 112A - Petya and Strings |
677A - Vanya and Fence | 1621A - Stable Arrangement of Rooks |
472A - Design Tutorial Learn from Math | 1368A - C+= |
450A - Jzzhu and Children | 546A - Soldier and Bananas |
32B - Borze | 1651B - Prove Him Wrong |
381A - Sereja and Dima | 41A - Translation |
1559A - Mocha and Math | 832A - Sasha and Sticks |
292B - Network Topology | 1339A - Filling Diamonds |
910A - The Way to Home | 617A - Elephant |
48A - Rock-paper-scissors | 294A - Shaass and Oskols |